git 学习笔记

您所在的位置:网站首页 git 图形界面 推荐 git 学习笔记

git 学习笔记

2024-05-24 05:40| 来源: 网络整理| 查看: 265

Git 图形工具

本章将介绍以下三种主流的 Git GUI 图形化工具,帮助开发者能更为轻松、高效的利用 Git 进行项目版本管理。

GitHub DesktopTortoiseGitVscode Git GitHub Desktop

Github Desktop 是 Github 推出的开源 Git GUI 图形客户端。可以在Windows和Macos平台上进行使用,目前暂不支持Linux平台。

首先进入官网,根据不同的系统,下载并安装对应版本的 GitHub Desktop 。 完成下载后,第一次打开软件会直接要求登录个人 Github 账户进行授权,并配置用户名和邮箱(识别个人创建的commits提交)。

如果没有找到让你登录 GitHub 账号的地方,你需要在 File -> Options -> Accounts -> Sign in 登录。 在完成基本配置后,会出现如下界面: 1

9.1.1.2 建立首个仓库

初次登陆会看到三个选项,也就是建立自己的第一个repository。 建立一个repo可以通过三个方式:

clone a repository:克隆一个repocreate new repository:建立一个新的repoadd a local repository:添加一个本地的repo

我们先选择从URL中克隆 faster-git 仓库,如下图,需要修改的地方为URL链接以及本地存储的路径。

2

由于在实际开源项目贡献的过程中,开发者往往并没有直接修改仓库内容的权限,因此需要先对目标仓库进行fork操作,再通过提交PR的方式进行代码的贡献。在下图中,可以通过左下角的warning标志⚠,判断用户是否有目标仓库的权限。如果没有写入权限,点击create a fork,将目标仓库复刻为自己的仓库,进行随意的修改。 3 4

在 Github Desktop 中完成fork后,登录 Github 网页就可以在个人仓库中看到目标仓库的复刻版,如下所示。 5

在完成了fork后,当前仓库就会索引到用户个人的复刻仓库,对应于本地指定目录下的文件。此时,用户拥有复刻仓库的所有权限,包括修改,删除,更改可视状态等等。接下来,就可以对本地分支中的代码进行修改,更新而当操作,再push到用户个人的复刻仓库中。 6 7

此时,登录 Github 网页版就会发现本地修改的代码已经上传到云端,个人复刻仓库进行了本地同步。 8

在完成个人仓库的代码更新后,还要注意个人仓库的分支和目标分支的先后情况,如果目标分支领先于fork分支,需要先通过fetch upstream操作进行更新后,再提交PR。

upstream分支指向上游地址即目标分支,这里的upstream名字可以任意指定,只是一般都把上游地址都叫upstream。

点击Contribute,并Open pull request,向目标仓库提交上传申请。 9 11 12

在完成PR后,会自动跳转到目标仓库,可以看到在Pull requests一栏中,上标增加了1,1就是贡献者所提交PR。之后就需要目标仓库的拥有者对贡献的代码进行审阅,如果代码合规可利用,就会将fork分支的commits合并到主分支中。这样一来,就完成了一次贡献!!👏👏 13

TortoiseGit

TortoiseGit 简称 tgit, 中文名海龟 Git ,是一个开放的 Windows 系统下的 Git 版本控制系统的源客户端,提供有中文版支持。由于它不是针对特定IDE(如Visual Studio、Eclipse或其他)的集成,所以可以与任何开发工具和任何类型的文件一起使用。与 Github Desktop 一类的传统图形化交互不同,与 TortoiseGit 的交互主要利用 Windows 资源管理器的上下文菜单,因此不需要打开任何软件,十分轻量、便捷。

根据操作系统的位数,下载并安装对应版本的 TortoiseGit 及中文语言包(✅ TortoiseGit 及语言包下载 ,✅TortoiseGit 安装教程)。

1、双击刚刚下载好的msi文件进入安装

2、连续两次next之后,到如下页面,更改下载位置,继续next 在这里插入图片描述

3、点击Install进行安装

4、点击Finish配置TortoiseGit 323

5、选择英文进入连续两次点击下一页 在这里插入人图片描述

6、配置git.exe,并点击下一页

的功夫

7、填写用户名和邮箱,并点击下一页 与空间

8、完成tortoisegit安装

我顶我顶

9、双击TortoiseGit-LanguagePack-64bit-zh_CN.msi,配置中文语言 发热沟通

基本使用

与 Github Desktop 不同,TortoiseGit 是通过鼠标右键菜单栏的方式进行 git 命令的交互,桌面空白处右键后如下所示。 看苦菊已经

本地Git仓库的创建有两种,一是直接Clone已存在的Git仓库,二是本地创建版本库。 在存放项目的目录点右键,选择Clone,配置目标仓库的URL以及本地存储的路径。 广泛认同苟富贵 466

克隆成功,在文件夹上就可以看到角标标识,下图是克隆后并修改的情况: 978 Git文件上角标符号是用于反映出当前文件或者文件夹的状态: 1、正常的:绿色的对号 2、被修改过的:红色感叹号 3、新添加的:蓝色的加号 4、未受控的(无版本控制的):蓝色的问号 5、忽略不受控的:灰色的减号 6、删除的:红色的叉号 7、有冲突的:黄色的感叹号

若是看不到角标符号可以查看该教程:TortoiseGit状态图标不能正常显示的解决办法

创建本地版本库

新建一个项目目录myfaster-git,在代码目录右键选择创建版本库。在弹出提示中,不要勾选纯版本库,直接确定 5345

之后项目目录下就会生成一个.git的目录,这个目录里面记录的是git操作相关内容。

在完成项目的代码更新后,可以右键选择 Git 提交进行add、commit以及push操作。 6785

填写日志信息作为commit的message,同时勾选设置作者日期以及作者,明确代码更新的细节。再在变更列表中选择需要commit的文件,最后点击提交并推送完成push操作。

7658687

当需要更新本地代码时,可以右键选择TortoiseGit,再选择拉取进行fetch。 56456656 794366567

📃注意:其余的一些git操作,可以在下拉框中进行操作,见上图。

###配置远端

右键选择TortoiseGit,再选择设置,进入以下界面。在Git下的远端中,可以配置本地main分支所对应的远端分支,例如个人Github仓库的origin分支,或者fork分支的上游upstream分支等等。

09008900

Vscode Git

在实际项目开发过程中,往往遇到的场景是项目开发者直接通过代码编辑器进行Git操作,在本章中,主要介绍Vscode中Git的一些基础的操作。

导入项目文件,选择侧边栏的第三项,就可以看到以下内容。 45566566776756

首选暂存所有更改,再在消息栏中输入message并点击勾进行提交,或者使用快捷键Ctrl+Enter进行提交。

gdgdjhd676

完成add和commit操作后,点击同步,即可以push到远端。 hjjh jju677

git 团队协作

在许多的多人组队(编程)任务、尤其是需要进行交叉修改代码中部分段落的时候,Git这样一个分布式版本控制系统的优势就体现出来。

粗放式的提交:加入仓库协作者,即可获得直接push的权限(优点:更方便&快捷)。 标准式的提交与合并:运用Pull Requests(优点:更严谨&利于把控每个版本的质量。例如Forking 工作流)。 为了避免误操作影响主分支,往往还需设置禁用向主仓库直接push,也就是禁用前一节所述的粗放式提交,然后再用PR请求的方式将fork的修改提交给仓库管理员审核,审核通过之后再合并入主分支;可以参考atlassian文档。 此外,这类比较正式的工作流也往往需要更加严谨的提交信息格式,例如本项目提交信息采用如下格式: 提交信息使用如下格式::

: │ │ │ └─⫸ Summary in present tense. Not capitalized. No period at the end. │ └─⫸ Commit Type: lecture{#NO}|others 处理冲突的工具

与团队协作相伴的往往就是修改冲突(Conflit)的问题。

这里介绍一个著名的用于进行代码比较的软件——Beyond Compare(或者简称bc,其官网为https://www.scootersoftware.com/download.php ,下文中所使用的版本为4.4,其他版本可能略有差异,比如对一些路径中含有的版本号数字可能需要微调,但主要功能基本一致)。

将bc用作代码比较工具可以较为方便地在git中进行配置,且拥有较成熟的图形化界面(对 不同系统的换行符CR、lF,也能较为合理地自动处理),相比与手动解决冲突的效率还是会好许多。

在bc完成安装之后: ####直接用git命令配置 其中C:/Program Files (x86)/Beyond Compare 4为(32位版本的)bc4的默认安装位置,如果安装时自定义了位置,需要相应地修改。(此外,因代码中有若干个带\ 的转义字符,请注意不要因手滑而删除之。) (这里是直接做了git的全局配置,如果只想让它在某个代码仓库生效可以将下面这段中的global都改为local。)

$ git config --global diff.tool bc4 $ git config --global difftool.bc4.cmd "\"C:/Program Files (x86)/Beyond Compare 4/BComp.exe\" \"\$LOCAL\" \"\$REMOTE\" \"\$BASE\" \"\$MERGED\"" $ git config --global difftool.bc4.trustExitCode true $ git config --global merge.tool bc4 $ git config --global mergetool.bc4.cmd "\"C:/Program Files (x86)/Beyond Compare 4/BComp.exe\" \"\$LOCAL\" \"\$REMOTE\" \"\$BASE\" \"\$MERGED\"" $ git config --global mergetool.bc4.trustExitCode true

如果输入命令后均无报错,则可跳过下面带括号的这个小节。

(或者修改配置文件 打开global(全局)或者local(某个项目)的配置文件,全局配置文件一般在用户文件夹下,可用如下命令打开

$ cd ~ $ vim .gitconfig

而local的配置文件则是在本地代码仓库文件夹的.git目录下的config文件。当然,在local中修改就不会在其他代码仓库文件夹里共用这个配置了。

在文件尾部新建一行,追加如下配置代码 并保存:

[diff] tool = bc4 [difftool "bc4"] cmd = \"C:/Program Files (x86)/Beyond Compare 4/BComp.exe\" \"$LOCAL\" \"$REMOTE\" [merge] tool = bc4 [mergetool "bc4"] cmd = \"C:/Program Files (x86)/Beyond Compare 4/BComp.exe\" \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\" trustExitCode = true


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3